package com.yuch.config;

import com.yuch.quartz.MyQuartz;
import org.quartz.*;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class QuartzConfig {

    /**
     * 工作明细
     * @return
     */
    @Bean
    public JobDetail printJobDetail(){
        //绑定具体的工作
        return JobBuilder.newJob(MyQuartz.class).storeDurably().build();
    }

    /**
     * 触发器和调度器
     */
    @Bean
    public Trigger printJobTrigger(){
        //调度器 描述出发工作的执行规则，通常是使用cron表达式
        ScheduleBuilder ScheduleBuilder = CronScheduleBuilder.cronSchedule("0/5 * * * * ?");

        //绑定工作明细
        return  TriggerBuilder.newTrigger().forJob(printJobDetail()).withSchedule(ScheduleBuilder).build();
    }
}
